A large portion of the Internet follows a client server model in which client devices request content from server systems across the Internet via a browser or a client application, e.g., a mobile application or a video console application. Under current content delivery schemes, network traffic bottlenecks at the server end are generally relieved via content delivery networks (CDNs), which cache content files on cache servers distributed across the Internet nearby large concentrations of users. This solution only partially solves the network traffic bottleneck problem. Despite the use of cache servers, a large amount of redundant traffic still flows through the current client/server network architecture. For example, redundant traffic may flow between CDNs and various servers that service multiple client devices.
Network traffic bottlenecks at the client end are generally relieved via end-user device browser caches. An end-user device browser cache, however, only provides benefits to a specific end-user, and hence has little or no network effect in terms of solving the global bandwidth problem. Furthermore, the end-user device browser cache only benefits the end-user on repeated visit to the same content. However, end-users tend to be more interested in content that he or she has not previously observed before (e.g., a new movie, new picture, or new song). Because of this, the net benefit of the browser cache is further reduced.
The figures depict various embodiments of this disclosure for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the invention described herein.